0x3A5AC	7F005A7C	(f/ 8004F1AC)
3D0E8007	LUI	T6,8007
8DCE5D18	LW	T6,5D18 (T6)	//T6=offset to 0xxx preset table
11C00018	BEQ	T6,R0,7F005AE8	//abort if no 0xxx presets!
00000000	NOP
0FC30288	JAL	7F0C0A20	//returns set number when demos are running.
3C018008	*LUI	at,8008
14020004	*bne	V0,R0,test
820F000B	*LB	T7,000B (S0)	//T7=set#
100F0003	*beq	t7,r0,expando!
3C028003	*lui	v0,8003
8C42B520	*lw	v0,b520 (v0)	//v0=#players
	//7F005AA8	[test]
144F000F	*bne	v0,t7,end
	//7F005AAc	[expando!]
3C0A8007	LUI	T2,8007
8E080004	LW	T0,0004 (S0)	//preset
8C229C68	*LW	V0,9C68 (at)	//V0=80079C68 (SPAWN COUNTER)
00084880	SLL	T1,T0,0x2
01284823	SUBU	T1,T1,T0
8D4A5D18	LW	T2,5D18 (T2)	//T2=0xxx preset list
00094880	SLL	T1,T1,0x2
01284823	SUBU	T1,T1,T0
00094880	SLL	T1,T1,0x2	//T1=offset to preset (preset * 0x2C)
00026080	SLL	T4,V0,0x2	//T4=offset in spawn pointer list
002C6021	*ADDU	T4,AT,T4
012A5821	ADDU	T3,T1,T2	//T3=address of preset
AD8B9C28	*SW	T3,9C28 (T4)	//save address of preset
244D0001	ADDIU	T5,V0,0001	//count++
AC2D9C68	SW	T5,9C68 (AT)	//save new count
	//7F0C5AE8:	end
100000BE	BEQ	R0,R0,7F005DE4
2610000C	ADDIU	S0,S0,000C	//S0=next command


GS!
820F000B	LB	T7,000B (S0)	//T7=set#
100F0004	BEQ	T7,R0,[expando]	//set is 0
3C018008	LUI	AT,8008
3C028003	LUI	V0,8003
8C42B520	LW	V0,B520 (V0)	//V0=#Players
144F000D	BNE	V0,T7,[END]	//set = player# or else
8E080004	LW	T0,0004 (S0)
8C229C68	LW	V0,9C68 (AT)	//V0=counter
3409002C	ORI	T1,R0,002C
01090019	MULTU	T1,T0
3C0A8007	LUI	T2,8007
8D4A5D18	LW	T2,5D18 (T2)	//T2=0xxx preset list
00004812	MFLO	T1
00026080	SLL	T4,V0,0x2
002C6021	ADDU	T4,AT,T4
012A5821	ADDU	T3,T1,T2
AD8B9C28	SW	T3,9C28 (T4)	//store spawn addy
244D0001	ADDIU	T5,V0,0001	//count++
AC2D9C68	SW	T5,9C68 (AT)	//save new count
0BC01779	J	7F005DE4
2610000C	ADDIU	S0,S0,000C

----------------------------------
Japanese hack
0x3A5D4	7F005A64	(f/8004F1DC)
3D0E8007	LUI	T6,8007
8DCE5D58	LW	T6,5D58 (T6)	//T6=offset to 0xxx preset table
11C00018	BEQ	T6,R0,7F005AE0	//abort if no 0xxx presets!
00000000	NOP
0FC305A4	JAL	7F0C1690	//returns set number
3C018008	*LUI	at,8008
14020004	*bne	V0,R0,test
820F000B	*LB	T7,000B (S0)	//T7=set#
100F0003	*beq	t7,r0,expando!
3C028003	*lui	v0,8003
8C42B560	*lw	v0,b560 (v0)	//v0=#players
	//7F005A90	[test]
144F000F	*bne	v0,t7,end
	//7F005A94	[expando!]
3C0A8007	LUI	T2,8007
8E080004	LW	T0,0004 (S0)	//preset
8C229CD8	*LW	V0,9CD8 (at)	//V0=80079C68 (SPAWN COUNTER)
00084880	SLL	T1,T0,0x2
01284823	SUBU	T1,T1,T0
8D4A5D58	LW	T2,5D58 (T2)	//T2=0xxx preset list
00094880	SLL	T1,T1,0x2
01284823	SUBU	T1,T1,T0
00094880	SLL	T1,T1,0x2	//T1=offset to preset (preset * 0x2C)
00026080	SLL	T4,V0,0x2	//T4=offset in spawn pointer list
002C6021	*ADDU	T4,AT,T4
012A5821	ADDU	T3,T1,T2	//T3=address of preset
AD8B9C98	*SW	T3,9C98 (T4)	//save address of preset
244D0001	ADDIU	T5,V0,0001	//count++
AC2D9CD8	SW	T5,9CD8 (AT)	//save new count
	//[END]
100000C5	BEQ	R0,R0,7F005DE8
2610000C	ADDIU	S0,S0,000C	//S0=next command


GS!
820F000B	LB	T7,000B (S0)	//T7=set#
100F0004	BEQ	T7,R0,[expando]	//set is 0
3C018008	LUI	AT,8008
3C028003	LUI	V0,8003
8C42B560	LW	V0,B560 (V0)	//V0=#Players
144F000D	BNE	V0,T7,[END]	//set = player# or else
8E080004	LW	T0,0004 (S0)
8C229CD8	LW	V0,9CD8 (AT)	//V0=counter
3409002C	ORI	T1,R0,002C
02090019	MULTU	T1,T0
3C0A8007	LUI	T2,8007
8D4A5D58	LW	T2,5D58 (T2)	//T2=0xxx preset list
00004812	MFLO	T1
00026080	SLL	T4,V0,0x2
002C6021	ADDU	T4,AT,T4
012A5821	ADDU	T3,T1,T2
AD8B9C98	SW	T3,9C98 (T4)	//store spawn addy
244D0001	ADDIU	T5,V0,0001	//count++
AC2D9CD8	SW	T5,9CD8 (AT)	//save new count
0BC0177A	J	7F005DE8
2610000C	ADDIU	S0,S0,000C

--------------------------------------
PAL HACK
0x383D4	7F0059E4	(f/ 800475FC)
3D0E8006	LUI	T6,8006
8DCE4C58	LW	T6,4C58 (T6)	//T6=offset to 0xxx preset table
11C00018	BEQ	T6,R0,[END]	//abort if no 0xxx presets!
00000000	NOP
0FC2FFA8	JAL	7F0BFEA0	//returns set number
3C018007	*LUI	at,8007
14020004	*bne	V0,R0,test
820F000B	*LB	T7,000B (S0)	//T7=set#
100F0003	*beq	t7,r0,expando!
3C028002	*lui	v0,8002
8C426A70	*lw	v0,6A70 (v0)	//v0=#players
	//7F005A10	[test]
144F000F	*bne	v0,t7,end
	//7F005A14	[expando!]
3C0A8006	LUI	T2,8006
8E080004	LW	T0,0004 (S0)	//preset
8C228778	*LW	V0,8778 (at)	//V0=80068778 (SPAWN COUNTER)
00084880	SLL	T1,T0,0x2
01284823	SUBU	T1,T1,T0
8D4A4C58	LW	T2,4C58 (T2)	//T2=0xxx preset list
00094880	SLL	T1,T1,0x2
01284823	SUBU	T1,T1,T0
00094880	SLL	T1,T1,0x2	//T1=offset to preset (preset * 0x2C)
00026080	SLL	T4,V0,0x2	//T4=offset in spawn pointer list
002C6021	*ADDU	T4,AT,T4
012A5821	ADDU	T3,T1,T2	//T3=address of preset
AD8B8738	*SW	T3,8738 (T4)	//save address of preset
244D0001	ADDIU	T5,V0,0001	//count++
AC2D8778	SW	T5,8778 (AT)	//save new count
	//7F005A50	[END]
100000C5	BEQ	R0,R0,7F005D68
2610000C	ADDIU	S0,S0,000C	//S0=next command


GS!
820F000B	LB	T7,000B (S0)	//T7=set#
100F0004	BEQ	T7,R0,[expando]	//set is 0
3C018007	LUI	AT,8007
3C028002	LUI	V0,8002
8C426A70	LW	V0,6A70 (V0)	//V0=#Players
144F000D	BNE	V0,T7,[END]	//set = player# or else
8E080004	LW	T0,0004 (S0)
8C228778	LW	V0,8778 (AT)	//V0=counter
3409002C	ORI	T1,R0,002C
01090019	MULTU	T1,T0
3C0A8006	LUI	T2,8006
8D4A4C58	LW	T2,4C58 (T2)	//T2=0xxx preset list
00004812	MFLO	T1
00026080	SLL	T4,V0,0x2
002C6021	ADDU	T4,AT,T4
012A5821	ADDU	T3,T1,T2
AD8B8738	SW	T3,8738 (T4)	//store spawn addy
244D0001	ADDIU	T5,V0,0001	//count++
AC2D8778	SW	T5,8778 (AT)	//save new count
0BC0175A	J	7F005D68
2610000C	ADDIU	S0,S0,000C
